import java.io.Serializable;

public class Apunte implements Comparable<Object>,Serializable{
	static int apuntes=0;
	private int num_apunte;
	private String fecha;
	private String descripcion;
	private double importe;

	Apunte(String fecha, String descripcion, double importe){
		this.fecha = fecha;
		this.descripcion = descripcion;
		this.importe = importe;
		num_apunte=++apuntes;
	}

	public String getFecha(){
		return fecha;
	}
	public String getDescripcion(){
		return descripcion;
	}
	public double getImporte(){
		return importe;
	}

	public int getNum_apunte(){
		return num_apunte;
	}
	public void setFecha(String fecha){
		this.fecha = fecha;
	}
	public void setDescripcion(String descripcion){
		this.descripcion = descripcion;
	}

	public void setImporte(double importe){
		this.importe = importe;
	}
	
	public boolean equals(Object obj){
	return ((this.fecha.equals(((Apunte)obj).fecha))
			& (this.descripcion.equals(((Apunte)obj).descripcion))
//			& (this.importe.equals(((Apunte)obj).importe))
//Me falta la comparación del importe para el que necesito hacer una
//conversión de tipos a Double.
			);
	}
	public String toString(){
		return (fecha + " " + descripcion + " " + importe);
	}
	
// La ordenación natural la haré en base al número del apunte pero
//prueba la dejo en base a fecha.
	public int compareTo(Object o){
		return this.fecha.compareTo(((Apunte)o).getFecha());
//		return this.num_apunte.compareTo(((Apunte)o).getNum_apunte());
//Me falta la comparación del número de apunte para el que necesito hacer una
//conversión de tipos a Int.
	}

}
